package api

import (
	"github.com/gofiber/fiber/v2"
)

type BaseController struct{}

// returnSuccess 返回成功的 API 响应
func (c *BaseController) returnSuccess(ctx *fiber.Ctx, code int, message string, data interface{}) error {
	return ctx.JSON(APIResponse{
		Code:    200,
		Message: "Success",
		Data:    data,
	})
}

// returnError 返回失败的 API 响应
func (c *BaseController) returnError(ctx *fiber.Ctx, code int, message string) error {
	return ctx.Status(code).JSON(APIResponse{
		Code:    code,
		Message: message,
	})
}

// APIResponse 用于统一格式化 API 返回结果
type APIResponse struct {
	Code    int         `json:"code"`
	Message string      `json:"message"`
	Data    interface{} `json:"data"`
}
